print("Welcome to 用户管理系统".center(50, "="))
user_list = [{"用户名": "root", "密码": "123456", "爱好": "无", "身份": "普通用户"},
             {"用户名": "yxy", "密码": "123", "爱好": "football", "身份": "管理员"}]


def menu1():
    print("1.登录\n"
          "2.注册\n"
          "3.退出\n")


def menu2():
    print("欢迎管理员".center(50, "="))
    print("请选择:\n"
          "1.查看当前用户\n"
          "2.修改某位用户\n"
          "3.删除某位用户\n"
          "4.添加某位用户\n"
          "5.返回上一级菜单\n")


def check():
    print("用户列表如下".center(50, "-"))
    for i in user_list:
        print("用户名:", i["用户名"])
    user_check = input("请输入要查看的用户:")
    for i in user_list:
        if user_check == i["用户名"]:
            print("查看结果如下")
            print(f"用户名:{i['用户名']}\n"
                  f"密码:{i['密码']}\n"
                  f"爱好:{i['爱好']}\n")
            # print(f"用户名     密码      爱好")
            # print(f"{i['用户名']}      {i['密码']}   {i['爱好']}")


def change():
    choice1 = input("1.修改用户名\n"
                    "2.修改密码\n"
                    "3.修改爱好\n"
                    "请选择:")
    if choice1 == "1":
        print("用户列表如下".center(50, "-"))
        for i in user_list:
            print("用户名:", i["用户名"])
        old_name = input("请输入要修改的用户名:")
        for i in user_list:
            if old_name == i["用户名"]:
                i['用户名'] = input("请输入新用户名:")
                print(f"新的用户名已经变更为{i['用户名']}")
    if choice1 == "2":
        print("用户列表如下".center(50, "-"))
        for i in user_list:
            print("用户名:", i["用户名"])
        user_name = input("请输入要修改密码的用户:")
        for i in user_list:
            if user_name == i["用户名"]:
                original_passwd = input("请输入原密码:")
                if original_passwd == i["密码"]:
                    i['密码'] = input("请输入新密码:")
                    print(f"用户{i['用户名']}的新密码已经变更为{i['密码']}")
    if choice1 == "3":
        print("用户列表如下".center(50, "-"))
        for i in user_list:
            print("用户名:", i["用户名"])
        user_name = input("请输入要修改爱好的用户:")
        for i in user_list:
            if user_name == i["用户名"]:
                i['爱好'] = input("你想变更成的爱好为:")
                print(f"用户{i['用户名']}的新爱好已经变更为{i['爱好']}")


def delete():
    for i in user_list:
        print("用户名:", i["用户名"])
    t = input("请输入要删除的用户:")
    for i in user_list:
        if t == i["用户名"]:
            choice_tf = input(f"再次确认是否要删除用户{t},如果需要删除输入'yes',不需要删除输入'no'")
            if choice_tf == "yes":
                for j in user_list:
                    if t == j["用户名"]:
                        user_list.remove(j)
                        print(f"用户{t}已删除")
                    else:
                        print(f"用户{t}不存在")
            elif choice_tf == "no":
                print("已退出删除用户选项，为您返回到上一级")
            else:
                print("你输入的不合法，请输入yes or no")
        else:
            print(f"用户{t}不存在,请重新选择")
            continue


def add():
    new_usr = input("请输入要添加的用户名")
    while True:
        for i in user_list:
            if new_usr == i["用户名"]:
                print("该用户名已存在，请重新输入")
            elif new_usr == "":
                print("用户名不能为空")
            else:
                usr_passwd = input("请输入此用户的密码:")
                usr_hobby = input("请输入此用户的爱好:")
                usr_type = input("请输入此用户的角色类型(管理员 or 普通用户):")
                if usr_passwd or usr_hobby or usr_type == "":
                    print("不能输入空值")
                elif usr_type == "管理员" or "普通用户":
                    user_list.append({"用户名": i, "密码": usr_passwd, "爱好": usr_hobby, "身份": usr_type})
                    print("新用户已创建完毕！")
                else:
                    print("你输入的不合法，请从管理员或普通用户中选择输入")
